package com.ming.springboot.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

/**
 * Created by mqsi on 2022/5/9 18:50
 */
@Component
public class FooService {
	private FooRespository fooRespository;

	/**
	 * 此处是按名称注入的bean，输出了 JdbcFooRepository
	 */
//	@Autowired
//	public FooService(FooRespository jdbcFooRepository) {
//		this.fooRespository = jdbcFooRepository;
//	}

	/**
	 * 按类型注入 fooRepository 会发现有两个实现类，其中一种加了 @Primary
	 * <p>此处若一个实现类不加 @Primary 程序启动会报错，或者按名称注入也不会报错</p>
	 *
	 * 注入了 HibernateFooRepository
	 */
	@Autowired
	public FooService(FooRespository fooRespository){
		this.fooRespository = fooRespository;
	}

	public FooRespository getFooRespository(){
		return this.fooRespository;
	}
}
